package com.whut.service;

import com.whut.model.Contractinfo;
import com.whut.model.Contracttaskaccept;
import com.whut.v_model.CTASummary;

import java.util.List;

public interface GeoService {
    /*得到所有地图点*/
    public Object getAllPoint(int contractId);

    /*根据给定的合同id找到合同底下的所有工程，找到其地理信息*/
    public Object getProjectsByContractId(int contractId);

    /*得到所有合同列表（未完成的）即委托方列表*/
    public Object getContractList();

    /*根据合同ID统计特征值数量*/
    public Object getStatByContractId(int contractId);

    /*先检验是不是要选择的这个项目的组长，再看这个项目CCT中的projectId的project是不是存过地理位置的信息*/
    Boolean getIsNeedGeo(int checkId);

    Boolean getIsHeader(int checkId, int userId);

    String updateGeoByProjectId(int projectId, float longitude, float latitude);
    /*通过projectId 找到需要的工程详细信息*/
    Object getProjectDetail(int projectId,int type);

    Object getRangedTime(int projectId, String st, String et);

    Object getalluncompletedposition();
    Object getallcompletedposition();
    Object getpositionbycontract(int contractId);
    Object getpositionbyid(int projectId);


    /**
     * 取委托方的名字
     *@author fuzhenjie
     *@date 19.9.21 8:01(GMT)
     *@param contractId
     *@return Contractinfo
     */
    public Contractinfo getContractInfoById(int contractId);

    /**
    * 得到最近三次检查的对比情况（更新）
    *@author fuzhenjie
    *@date 20.1.1 18:02(GMT)
    *@param projectId
    *@param type
    *@return java.lang.Object
    */
    Object getRecentlyTop3CheckCompareDetail(int projectId, int type);

    /**
     * 通过合同Id搜索所有合同中的周期
     *@author fuzhenjie
     *@date 20.1.1 19:26(GMT)
     *@param contractId
     *@return java.lang.Object
     */
    List<Contracttaskaccept> getCTAByContractId(int contractId);

    /**
    * 比较周期中的五种隐患的信息
    *@author fuzhenjie
    *@date 20.1.1 19:54(GMT)
    *@param list 周期Id数组
    *@return java.util.List<com.whut.v_model.CTASummary>
    */
    List<CTASummary> getCTACompareInfo(List<Integer> list,int type);

    Object getAllUnFinishedProjectId();

    /*wxd*/
    String updateContractGeoByContractId(int contractId, String longitude, String latitude);

    Object getProjectNamesByValue(String value,int contractId);

    String getGeoByProjectId(int projectId);
}
